Skip to content

Add breeze pr auto-triage command#62682

Open
potiuk wants to merge 1 commit intoapache:mainfrom
potiuk:add-breeze-pr-draft-incomplete
Open

Add breeze pr auto-triage command#62682
potiuk wants to merge 1 commit intoapache:mainfrom
potiuk:add-breeze-pr-draft-incomplete

Conversation

@potiuk
Copy link
Member

@potiuk potiuk commented Mar 1, 2026

Add a new Breeze CLI command that helps maintainers efficiently triage
open PRs from non-collaborators that don't meet minimum quality criteria.

The command fetches open PRs via GitHub GraphQL API with optimized chunked
queries, runs deterministic CI checks (failures, merge conflicts, missing
test workflows), optionally runs LLM-based quality assessment, and presents
flagged PRs interactively for maintainer review with author profiles and
contribution history.

Key features:

  • Optimized GraphQL queries with chunking to avoid GitHub timeout errors
  • Deterministic CI failure detection with categorized fix instructions
  • LLM assessment via claude or codex CLI for content quality
  • Interactive review with Rich panels, clickable links, and author context
  • Multi-action triage prompt (draft/close/ready/skip/quit) with smart defaults
  • PRs grouped by author with per-author flagged count headers
  • Auto-close suggestion when author has >3 flagged PRs, with dedicated label
  • Bot account filtering (dependabot, renovate, github-actions)
  • Workflow approval with PR diff review and suspicious changes detection
  • Suspicious changes flow: closes all author PRs, labels, and comments
  • Merge conflict and commits-behind detection with rebase guidance

Labels used by auto-triage:

  • ready for maintainer review — marks PRs as reviewed and acceptable, skipped in future runs
  • closed because of multiple quality violations — applied when closing PRs from authors with >3 flagged PRs
  • suspicious changes detected — applied when malicious/suspicious changes are found, closes all author PRs

Updated documentation:

  • dev/breeze/doc/13_pr_tasks.rst — full triage process, actions, labels, and examples
  • contributing-docs/05_pull_requests.rst — quality criteria consequences (close, suspicious)

Was generative AI tooling used to co-author this PR?
  • Yes — Claude Opus 4.6

Generated-by: Claude Opus 4.6 following the guidelines

@boring-cyborg boring-cyborg bot added area:dev-tools backport-to-v3-1-test Mark PR with this label to backport to v3-1-test branch labels Mar 1, 2026
@potiuk potiuk changed the title Add breeze pr draft-incomplete command Add breeze pr auto-triage command Mar 2, 2026
@potiuk potiuk force-pushed the add-breeze-pr-draft-incomplete branch 3 times, most recently from f07700d to dcd4df4 Compare March 2, 2026 07:14
@potiuk potiuk marked this pull request as ready for review March 2, 2026 07:16
@potiuk potiuk force-pushed the add-breeze-pr-draft-incomplete branch from dcd4df4 to 84f893e Compare March 2, 2026 07:18
@potiuk
Copy link
Member Author

potiuk commented Mar 2, 2026

Discussion on Devlist here: https://lists.apache.org/thread/h01mby0jxjldd1mfdq3w0pd2kowfzoxy

Example screnshot assessing one of the PRs:

Screenshot 2026-03-02 at 08 42 08

@potiuk potiuk force-pushed the add-breeze-pr-draft-incomplete branch 3 times, most recently from 79ca067 to ff5dd71 Compare March 2, 2026 09:06
@potiuk potiuk force-pushed the add-breeze-pr-draft-incomplete branch 2 times, most recently from 45caa73 to 206b77e Compare March 2, 2026 13:14
Add a new Breeze CLI command that helps maintainers efficiently triage
open PRs from non-collaborators that don't meet minimum quality criteria.

The command fetches open PRs via GitHub GraphQL API with optimized chunked
queries, runs deterministic CI checks (failures, merge conflicts, missing
test workflows), optionally runs LLM-based quality assessment, and presents
flagged PRs interactively for maintainer review with author profiles and
contribution history.

Key features:
- Optimized GraphQL queries with chunking to avoid GitHub timeout errors
- Deterministic CI failure detection with categorized fix instructions
- LLM assessment via `claude` or `codex` CLI for content quality
- Interactive review with Rich panels, clickable links, and author context
- "maintainer-accepted" label to skip PRs on future runs
- Workflow approval support for first-time contributor PRs awaiting CI runs
- Merge conflict and commits-behind detection with rebase guidance

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@potiuk potiuk force-pushed the add-breeze-pr-draft-incomplete branch from 206b77e to 20829dd Compare March 2, 2026 17:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:dev-tools backport-to-v3-1-test Mark PR with this label to backport to v3-1-test branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants